35 std::map<std::string, std::string> folders_;
38 static bool registerFolder(
const std::string& _plugin,
const std::string _folder);
60inline FolderRegistry::FolderRegistry()
65inline FolderRegistry::~FolderRegistry()
75 std::cout << std::setw(31) << std::left <<
"FolderRegistry"
76 <<
" XXX unregister old '" << _plugin <<
"' folder: " << get().folders_.at(_plugin) << std::endl;
83 get().folders_.insert(std::pair<std::string, std::string>(_plugin, _folder)).second;
84 std::cout << std::setw(31) << std::left <<
"FolderRegistry"
85 <<
" <-- registered '" << _plugin <<
"' folder: " << _folder << std::endl;
95 return get().folders_.erase(_plugin) == 1;
97 std::cout << std::setw(31) << std::left <<
"FolderRegistry"
98 <<
" ERROR trying to unregister " << _plugin <<
": Not registered." << std::endl;
104 return get().folders_.count(_plugin);
115 std::cout <<
"FolderRegistry address: " << &get() << std::endl;
120 std::vector<std::string> vec;
121 for (
auto pair : get().folders_) vec.push_back(pair.second);
127 for (
auto pair : get().folders_) _folders.push_back(pair.second);
132#define WOLF_REGISTER_FOLDER(plugin, folder) \
135 const bool WOLF_UNUSED folder##Registered = FolderRegistry::registerFolder(plugin, folder); \
Definition: folder_registry.h:33
static void printAddress()
Definition: folder_registry.h:113
static std::vector< std::string > getRegisteredFolders()
Definition: folder_registry.h:118
static bool isFolderRegistered(const std::string &_plugin)
Definition: folder_registry.h:102
FolderRegistry(const FolderRegistry &)=delete
static bool registerFolder(const std::string &_plugin, const std::string _folder)
Definition: folder_registry.h:70
static void appendRegisteredFolders(std::vector< std::string > &_folders)
Definition: folder_registry.h:125
static bool unregisterFolder(const std::string &_plugin)
Definition: folder_registry.h:92
void operator=(FolderRegistry const &)=delete
Definition: capture_base.h:23